package com.itheima.iterator;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class MyIteratorDemo2 {
    public static void main(String[] args) {
        //多态只能使用父类中存在的方法
        Collection<String> list = new ArrayList<>();
        //boolean add(E e)
        list.add("a");
        list.add("b");
        list.add("b");
        list.add("b");
        list.add("c");
        list.add("d");
        list.add("e");
        list.add("f");

        //迭代器创建后,我们无法再直接对原集合进行操作
        Iterator<String> it = list.iterator();
        //迭代器指向的是集合内部元素的地址值对象,
        //虽然索引值改变但本身的地址值不变,还能被迭代器捕捉
        while (it.hasNext()){
            String s = it.next();
            if ("b".equals(s)){
                it.remove();
            }
        }
        System.out.println(list);

    }
}
